package com.monkar.java.dao;

import java.util.List;

import javax.sql.DataSource;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
import org.springframework.jdbc.core.simple.SimpleJdbcTemplate;
import org.springframework.stereotype.Repository;

import com.monkar.java.bean.RolModuloDTO;
import com.monkar.java.bean.UsuarioDTO;
import com.monkar.java.constans.QuerysMySQL;
import com.monkar.java.constans.RowMapperConstans;

@Repository
public class RolModuloDAO {
	private SimpleJdbcTemplate simpleJdbcTemplate;
    private JdbcTemplate jdbcTemplate;
	private NamedParameterJdbcTemplate namedParameterJdbcTemplate;
	@Autowired
	public void init(DataSource dataSource) {
		this.simpleJdbcTemplate = new SimpleJdbcTemplate(dataSource);
		this.jdbcTemplate=new JdbcTemplate(dataSource);
		this.namedParameterJdbcTemplate=new NamedParameterJdbcTemplate(dataSource);
	}
	
	
	
	@SuppressWarnings("unchecked")
	public List<RolModuloDTO> listarXUsuario(UsuarioDTO usuario, int nivel, int dependencia){
	
	StringBuffer sqlb= new StringBuffer(QuerysMySQL.LISTAR_MODULOS);
	sqlb.append(" usuario='"+usuario.getUsuario()+"' and clave=md5('"+usuario.getClave()+"') and nivel="+nivel+" and idDepende="+dependencia );
	String sql= sqlb.toString();
	System.out.println(sql);
	return this.jdbcTemplate.query(sql,new RowMapperConstans.RolModuloMapper());
	}
	
	@SuppressWarnings("unchecked")
	public List<RolModuloDTO> listarXUsuarioExistente(UsuarioDTO usuario, int nivel, int dependencia){
	StringBuffer sqlb= new StringBuffer(QuerysMySQL.LISTAR_MODULOS);
	sqlb.append(" usuario='"+usuario.getUsuario()+"' and clave='"+usuario.getClave()+"' and nivel="+nivel+" and idDepende="+dependencia );
	String sql= sqlb.toString();
	System.out.println(sql);
	return this.jdbcTemplate.query(sql,new RowMapperConstans.RolModuloMapper());
	}
}
